package clothinglibraryenumsmysql

const (
	TagOne   = 1 //s
	TagTwo   = 2 //a
	TagThree = 3 //b
	TagFour  = 4 //b

	// 散件
	DanceActivitiesDrawPrizeConditionsTypeActivitiesHair  = 1 //头发
	DanceActivitiesDrawPrizeConditionsTypeActivitiesFace  = 2 // 脸
	DanceActivitiesDrawPrizeConditionsTypeActivitiesUpper = 5 // 上半身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesLower = 6 // 下半身fa
	DanceActivitiesDrawPrizeConditionsTypeActivitiesShoes = 8 // 鞋子
	//挂件
	DanceActivitiesDrawPrizeConditionsTypeActivitiesLHand = 11 // 左手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRHand = 12 // 右手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesHead  = 14 // 头顶
	DanceActivitiesDrawPrizeConditionsTypeActivitiesBack  = 15 // 背后
	//组合
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHF      = 21 // 组合 - 头发 + 脸
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJ     = 22 // 组合 - 头发 + 脸 + 上身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJP    = 23 // 组合 - 头发 + 脸 + 上身 + 下身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJPS   = 24 // 组合 - 头发 + 脸 + 上身 + 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJ      = 25 // 组合 - 头发 + 上身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJP     = 26 // 组合 - 头发 + 上身 + 下身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJPS    = 27 // 组合 - 头发 + 上身 + 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJP      = 28 // 组合 - 上身 + 下身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJPS     = 29 // 组合 - 上身 + 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitPS      = 30 // 组合 - 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisLocal = 41 // 腰附加
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1Local = 42 // 胸附加
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRootLocal   = 43 // 脚底附加
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisWorld = 51 // 腰挂载
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1World = 52 // 胸挂载
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorld   = 53 // 脚底挂载
	DanceActivitiesDrawPrizeConditionsTypeActivitiesHalo        = 90 // 光环
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPiece       = 80 // 碎片
	//挂件
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentLHand = 100 // 送礼出现的 额外挂载 左手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentRHand = 200 // 送礼出现的 额外挂载 右手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentHead  = 300 // 送礼出现的 额外挂载 头顶
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentBack  = 400 // 送礼出现的 额外挂载 背后 Max }
	DanceActivitiesDrawPrizeConditionsTypeActivitiesScore        = -1  // 送礼出现的 额外挂载 背后 Max }

)

type DanceActivitiesDrawPrizeConditionsEnums struct {
}

var DanceActivitiesDrawPrizeConditionsEnumsObject DanceActivitiesDrawPrizeConditionsEnums

//public enum ClothPart : int { None = 0,
// 散件
//Hair = 1//头发
//Face = 2// 脸
//Upper = 5// 上半身
//Lower = 6// 下半身fa
//Shoes = 8// 鞋子

//挂件
//LHand = 11// 左手持
//RHand = 12// 右手持
//Head = 14// 头顶
//Back = 15// 背后
//组合
//SuitHF = 21// 组合 - 头发 + 脸
//SuitHFJ = 22// 组合 - 头发 + 脸 + 上身
//SuitHFJP = 23// 组合 - 头发 + 脸 + 上身 + 下身
//SuitHFJPS = 24// 组合 - 头发 + 脸 + 上身 + 下身 + 鞋
//SuitHJ = 25// 组合 - 头发 + 上身
//SuitHJP = 26// 组合 - 头发 + 上身 + 下身
//SuitHJPS = 27// 组合 - 头发 + 上身 + 下身 + 鞋
//SuitJP = 28// 组合 - 上身 + 下身
//SuitJPS = 29// 组合 - 上身 + 下身 + 鞋
//SuitPS = 30// 组合 - 下身 + 鞋
//PelvisLocal = 41// 腰附加
//Spine1Local = 42// 胸附加
//RootLocal = 43// 脚底附加
//PelvisWorld = 51// 腰挂载
//Spine1World = 52// 胸挂载
//RootWorld = 53// 脚底挂载
//Halo = 90// 光环
//挂件
//PresentLHand = 100// 送礼出现的 额外挂载 左手持
//PresentRHand = 200// 送礼出现的 额外挂载 右手持
//PresentHead = 300// 送礼出现的 额外挂载 头顶
//PresentBack = 400// 送礼出现的 额外挂载 背后 Max }

func (e DanceActivitiesDrawPrizeConditionsEnums) ConditionsType() []int {
	return []int{
		DanceActivitiesDrawPrizeConditionsTypeActivitiesHair,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesFace,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesUpper,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesLower,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesShoes,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesLHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesHead,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesBack,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHF,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJ,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJP,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJ,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJP,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJP,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisLocal,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1Local,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRootLocal,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisWorld,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1World,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorld,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesHalo,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentLHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentRHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentHead,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentBack,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPiece,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesScore,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ConditionsTypeMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ConditionsType() {
		m[s] = e.ConditionsTypeString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ConditionsTypeString(tag int) string {
	switch tag {
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesHair:
		return "头发"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesFace:
		return "脸"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesUpper:
		return "上半身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesLower:
		return "下半身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesShoes:
		return "鞋子"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesLHand:
		return "左手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRHand:
		return "右手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesHead:
		return "头顶"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesBack:
		return "背后"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHF:
		return "头发+脸"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJ:
		return "头发+脸+上身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJP:
		return "头发+脸+上身+下身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJPS:
		return "头发+脸+上身+下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJ:
		return "头发+上身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJP:
		return "头发+上身+下身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJPS:
		return "头发+上身+下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJP:
		return "上身+下身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJPS:
		return "上身+下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitPS:
		return "下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisLocal:
		return "腰附加"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1Local:
		return "胸附加"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRootLocal:
		return "脚底附加"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisWorld:
		return "腰挂载"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1World:
		return "胸挂载"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorld:
		return "脚底挂载"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesHalo:
		return "光环"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentLHand:
		return "额外挂载 左手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentRHand:
		return "额外挂载 右手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentHead:
		return "额外挂载 头顶"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentBack:
		return "额外挂载 背后"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPiece:
		return "碎片"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesScore:
		return "星光值"
	default:
		return "公有"
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) Tag() []int {
	return []int{
		TagOne,
		TagTwo,
		TagThree,
		TagFour,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) TagMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.Tag() {
		m[s] = e.TagString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) TagString(tag int) string {
	switch tag {
	case TagOne:
		return "一级"
	case TagTwo:
		return "二级"
	case TagThree:
		return "三级"
	case TagFour:
		return "四级"
	default:
		return "公有"
	}
}
